/*

简单移位加密程序

输入一个加密密钥alpha, 还有N个字符. 采用移位加密规则对N个字符进行加密. 加密规则如下:

1) 对英文字母（A到Z和a到z）采取向后平行移动alpha位 (其中1 <= alpha <= 25)加密，其他字符则保持不变.
2) 如果英文字母已经是靠后的alpha个字母，则循环从A或a移位.

例如: 当alpha=4时, A被加密为E, a被加密为e, w被加密为a, Z被加密为c.

输入: 第一行是两个整数alpha与N, 两个整数用空格分隔. 第二行是N个待加密的字符.
输出: N个加密后的字符.

样例输入:
4 7
Hi,nuaa

样例输出:
Lm,ryee

*/

#include <stdio.h>

int main(void)
{
    int alpha = 0, N = 0;
    // scanf一定要将第一行末尾的换行符也读入, 否则读取第一个字符时将读到换行符
    scanf("%d%d\n", &alpha, &N);
    int i = 0;
    for(i = 0; i < N; i++)
    {
        char c;
        scanf("%c", &c);
        if ((c >= 'A') && (c <= 'Z')) {
            // 大写英文字母
            int delta;
            delta = c - 'A';
            delta = delta + alpha;
            if (delta >= 26)
                delta = delta % 26;
            char new_c = 'A' + delta;
            printf("%c", new_c);
        }
        else if ((c >= 'a') && (c <= 'z')) {
            int delta;
            delta = c - 'a';
            delta = delta + alpha;
            if (delta >= 26)
                delta = delta % 26;
            char new_c = 'a' + delta;
            printf("%c", new_c);
        }
        else
        {
            printf("%c", c);
        }
    }
    return 0;
}


